/**
 * Seccion.java
 */

 /**
 *  AdSec: Administrador de Secundarias
 *  Copyright (C) 2009 Daniela Ramírez Chaves (dannyrch@gmail.com)
 *  Copyright (C) 2009 Leonel Salazar Valverde (leo87sv@gmail.com)
 *
 *  This file is part of AdSec.
 *  AdSec is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  AdSec is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with AdSec.  If not, see <http://www.gnu.org/licenses/>.
 */

package adsec.entidades;

import java.util.Calendar;
import adsec.negocios.UtilidadesCapaNegocios;


public class Seccion implements Comparable {

    // <editor-fold defaultstate="collapsed" desc="Constantes de Nombres de Columnas">
    public final static String nombreTabla = "seccion";
    public static final String seccionNC = "num_seccion";
    public static final String nivelNC = "nivel";
    public static final String anioNC = "anio";
    public static final String cantEstudiantesNC = "cant_estudiantes";
    public static final String cupoMaximoNC = "cupo_maximo";
    public static final String cedProfGuiaNC = "ced_prof_guia";
    public static final String nombreProfNC = "nombre";
    public static final String apellidosProfNC = "apellidos";
    // </editor-fold>

    // <editor-fold defaultstate="collapsed" desc="Atributos privados de la clase">
    private int seccion;
    private int nivel;
    private int anio;
    private int cantEstudiantes;
    private String cedProfGuia;
    private String nombreProfGuia;
    private String apellidosProfGuia;
    private int cupoMaximo;
    // </editor-fold>
    
    public Seccion(){
        this.nivel = this.seccion = this.cantEstudiantes = this.cupoMaximo = 0;
        this.anio = Calendar.getInstance().get(Calendar.YEAR);
        this.cedProfGuia = UtilidadesCapaNegocios.CEDULA_INVALIDA;
        this.nombreProfGuia = new String("");
        this.apellidosProfGuia = new String("");

    }//fin de constructor

    @Override
    public int compareTo(Object objeto){
        int resultado = -1;
        Seccion otraSeccion = (Seccion)objeto;
        resultado = this.anio - otraSeccion.anio;
        if(resultado == 0){
            resultado = this.nivel - otraSeccion.nivel;
            if(resultado == 0){
                resultado = this.seccion - otraSeccion.seccion;
            }
        }
        return resultado;
    }

    /**
     * @return the anio
     */
    public int getAnio() {
        return anio;
    }

    /**
     * @param anio the anio to set
     */
    public void setAnio(int anio) {
        this.anio = anio;
    }

    /**
     * @return the seccion
     */
    public int getSeccion() {
        return seccion;
    }

    /**
     * @param seccion the seccion to set
     */
    public void setSeccion(int numSeccion) {
        this.seccion = numSeccion;
    }

    /**
     * @return the nivel
     */
    public int getNivel() {
        return nivel;
    }

    /**
     * @param nivel the nivel to set
     */
    public void setNivel(int nivel) {
        this.nivel = nivel;
    }

    /**
     * @return the cantEstudiantes
     */
    public int getCantEstudiantes() {
        return cantEstudiantes;
    }

    /**
     * @param cantEstudiantes the cantEstudiantes to set
     */
    public void setCantEstudiantes(int cantEstudiantes) {
        this.cantEstudiantes = cantEstudiantes;
    }

    /**
     * @return the cedProfGuia
     */
    public String getCedProfGuia() {
        return cedProfGuia;
    }

    /**
     * @param cedProfGuia the cedProfGuia to set
     */
    public void setCedProfGuia(String cedProfGuia) {
        this.cedProfGuia = cedProfGuia;
    }

    /**
     * @return the nombreProfGuia
     */
    public String getNombreProfGuia() {
        return nombreProfGuia;
    }

    /**
     * @param nombreProfGuia the nombreProfGuia to set
     */
    public void setNombreProfGuia(String nombreProfGuia) {
        this.nombreProfGuia = nombreProfGuia;
    }

    /**
     * @return the apellidosProfGuia
     */
    public String getApellidosProfGuia() {
        return apellidosProfGuia;
    }

    /**
     * @param apellidosProfGuia the apellidosProfGuia to set
     */
    public void setApellidosProfGuia(String apellidosProfGuia) {
        this.apellidosProfGuia = apellidosProfGuia;
    }

    /**
     * @return the cupoMaximo
     */
    public int getCupoMaximo() {
        return cupoMaximo;
    }

    /**
     * @param cupoMaximo the cupoMaximo to set
     */
    public void setCupoMaximo(int cupoMaximo) {
        this.cupoMaximo = cupoMaximo;
    }
}//fin de clase Seccion
